package com.whfc.fmam.service;

import com.whfc.common.exception.BizException;
import com.whfc.common.result.ListData;
import com.whfc.common.result.PageData;
import com.whfc.fmam.entity.dto.FmamSupplierDTO;
import com.whfc.fmam.entity.qo.SupplierAddQO;

import java.util.List;

/**
 * @Author: ；likang
 * @Description: 物资合作单位
 * @Date:Create：in 2019/11/14 18:45
 * @Version：1.0
 */
public interface FmamSupplierService {



    /**
     * 查询物资合作单位
     *
     * @param pageNum
     * @param pageSize
     * @param category 供应商类别
     * @param deptId   组织机构ID
     * @return
     */
    PageData<FmamSupplierDTO> listFmamSupplierDTO(Integer pageNum, Integer pageSize, Integer category, Integer deptId) throws BizException;

    /**
     * 获取所有的收发料单位
     * @param deptId
     * @param category
     * @return
     */
    ListData<FmamSupplierDTO> list(Integer deptId, Integer category);
    /**
     * 查询物资合作单位  微信小程序使用
     *
     * @param deptId
     * @return
     */
    List<FmamSupplierDTO> listFmamSupplierDTO(Integer deptId) throws BizException;

    /**
     * 查看物资合作单位详情
     *
     * @param id
     * @return
     */
    FmamSupplierDTO getFmamSupplierDetail(Integer id) throws BizException;

    /**
     * 添加物资合作单位
     *
     * @param supplierAddQO
     * @return
     */
    void addSupplier(SupplierAddQO supplierAddQO) throws BizException;

    /**
     * 删除物资合作单位
     *
     * @param id
     */
    void delSupplier(Integer id) throws BizException;

    /**
     * 通过合作商ID查询物资合作单位ID
     *
     * @return
     */
    FmamSupplierDTO getSupplierByCorpIdAndCategory(Integer corpId, Integer category) throws BizException;

    /**
     * 根据合作单位ID(corpId)
     *
     * @param category
     * @param deptId
     * @return
     * @throws BizException
     */
    List<Integer> getCorpIds(Integer category, Integer deptId) throws BizException;

    void deleteBatch(List<Integer> idList);
}
